/** 角色类型 */
export enum RoleType {
  Nomal = 'customer',
  Admin = 'admin',
  Nothing = ''
}
/** 用户状态 */
export enum UserStatusType {
  Nomal = 0,
  Fozen
}
/** 车辆锁车状态  */
export enum LockStatus {
  Locked = '1',
  Unlocked = '0'
}
/** 车辆网络状态 */
export enum OnlineStatus {
  OnLine = '1',
  UnOnLine = '0'
}
/**
 * @description 计费规则
 * @param TimeBased - 时长计费
 * @param Tiered - 阶梯计费
 */
export type FeeRulesType = 'TimeBased' | 'Tiered'

/**
 * @description 换电业务类型
 * @param ChangeBattery - 换电套餐-不含电
 * @param BatteryTimesCard - 电池次卡-不含电
 * @param BatteryOverdue - 电池逾期
 * @param BatteryActivity - 电池套餐-含电
 * @param BatteryOverdueRerent - 电池逾期续租-组合支付
 * @param BatteryDeposit - 电池押金退款
 * @param BatteryRerent - 电池续租
 * @param BikeLongTerm - 车辆长租
 * @param BikeOverdue - 租车逾期
 * @param BikeRerent - 租车续租
 * @param BikeOverdue - 租车逾期续租
 * @param BikeOverdueRerent - 租车押金退款
 * @param OnlineBike - 车辆售卖
 * @param BikeModified - 中控线材电池
 * @param Battery - 电池购买
 * @param BikeShortTerm - 车辆短租
 * @param BalanceRecharge 余额充值
 * @param BalanceWithdraw 余额提现
 * @param BikeDepositCard 押金卡
 * @param BikeRentCard 车辆租赁卡 (短租适用)
 * @param BikeDepositCardRefund 押金卡退款
 * @param FreeDepositCard 短租免押卡
 * @param AdditionalFees 额外费用 (包括各种违规、维修、拖车费等)
 * @param BikeMargin 车辆保证金 出区域保证金
 * @param BikeMarginRefund 出区域保证金退款
 *
 *  */
export enum BizType {
  ChangeBattery = 'ChangeBattery',
  BatteryTimesCard = 'BatteryTimesCard',
  BatteryOverdue = 'BatteryOverdue',
  BatteryActivity = 'BatteryActivity',
  BatteryOverdueRerent = 'BatteryOverdueRerent',
  BatteryDeposit = 'BatteryDeposit',
  BatteryRerent = 'BatteryRerent',
  BikeLongTerm = 'BikeLongTerm',
  BikeOverdue = 'BikeOverdue',
  BikeRerent = 'BikeRerent',
  BikeOverdueRerent = 'BikeOverdueRerent',
  BikeDeposit = 'BikeDeposit',
  OnlineBike = 'OnlineBike',
  BikeModified = 'BikeModified',
  Battery = 'Battery',
  BatterySwap = 'BatterySwap',
  BikeShortTerm = 'BikeShortTerm',
  BalanceRecharge = 'BalanceRecharge',
  BalanceWithdraw = 'BalanceWithdraw',
  BikeDepositCard = 'BikeDepositCard',
  BikeRentCard = 'BikeRentCard',
  BikeDepositCardRefund = 'BikeDepositCardRefund',
  AdditionalFees = 'AdditionalFees',
  BikeMargin = 'BikeMargin',
  BikeMarginRefund = 'BikeMarginRefund'
}
/** 支付类型 */
export enum PaymentType {
  Alipay = 'Alipay',
  WeChat = 'WeChat'
}
/**
 * @description 长租车辆状态
 * @param 0 - 全部车辆
 * @param 1 - 空闲车辆
 * @param 2 - 断网车辆
 * @param 3 - 租赁中车辆
 */
export type LongBikeState = '0' | '1' | '2' | '3'
/**
 * @description 短租车辆状态
 * @param '' - 不限
 * @param 0 - 空闲车辆
 * @param 1 - 使用中车辆
 * @param 2 - 维修中车辆
 */
export type TimeBikeState = '' | '0' | '1' | '2'
/**
 * @description 车辆状态
 * @param Fee - 空闲
 * @param LostLine - 断网
 * @param Rent - 租赁中
 * @param LowPower - 低电
 * @param NoPower - 零电
 * @param UnLock - 开锁
 * @param Repair - 维修
 */
export enum BikeType {
  All = '0',
  Free = '1',
  LostLine = '2',
  Rent = '3',
  LowPower = '4',
  NoPower = '5',
  UnLock = '6',
  Repair = '7'
}
/** 退款状态 */
export enum RefundState {
  /** 审核中 */
  UnderReview = 'underreview',
  /** 退款 */
  Refund = 'refund',
  /** 已退款 */
  Refunded = 'refunded',
  /** 已驳回 */
  OverRule = 'overrule',
  /** 已撤回 */
  WithDraw = 'withdraw'
}
/** 是否允许换电 */
export enum AllowChangeBattery {
  Allow = '1',
  UnAllow = '0'
}
/** 是否允许先用后付 */
export enum PayAfterUse {
  Allow = '1',
  UnAllow = '0'
}
/** 是否允许使用卡券 */
export enum CanUseCoupon {
  Allow = '1',
  UnAllow = '0'
}
/** rent-bike-table 类型  */
export enum RentBikeTablePageType {
  LongRent = 'longRent',
  TimeRent = 'timeRent'
}
/** cabinet-table 类型  */
export enum CabinetBikeTablePageType {
  CabinetList = 'cabinetList',
  OperatorsInfo = 'operatorsInfo'
}
/** 押金类型 */
export enum DepositType {
  AlipayCredit = 'AlipayCredit',
  WeChatCredit = 'WeChatCredit',
  Deposit = 'Deposit'
}
/**
 * 门店营业状态
 * @param '' - 不限
 * @param 0 - 已打烊
 * @param 1 - 营业中
 * @param 2 - 已删除
 */
export enum StoreStatus {
  ALL = '',
  OPEN = '1',
  CLOSE = '0',
  DELETED = '2'
}
/** 0 可用 1 维护 */
export enum MaintenanceStatus {
  Use = '0',
  Repair = '1'
}

/** 电池开关锁 0 已关 1已开 */
export enum BoxLockStatus {
  Close = '0',
  Open = '1'
}
/** 仓门状态 0 已关 1已开 */
export enum DoorStatus {
  Close = '0',
  Open = '1'
}

/** 电柜网络状态 */
export enum BoxStatus {
  Lose = '0',
  Connect = '1'
}
/** 是否含电池 */
export enum IncludedBatteryType {
  No = '0',
  Yes = '1'
}

/**
 * 套餐状态
 * @param 1 上架中
 * @param 0 下架
 */
export type TermStatus = '1' | '0'

/**
 * 可租周期
 * @param 1d 日租
 * @param 7d 周租
 * @param 30d 月租
 * @param 后续同理
 */
export type RentTimeType = '1d' | '7d' | '30d' | '90d' | '180d' | '360d'
export type RentTimeNameType = '日租' | '周租' | '月租' | '季租' | '半年租' | '年租' | '终身购买'
/**
 * 电池电压
 * @param 48V 60V
 */
export type VoltageType = '48V' | '60V'

/**
 * 长租车 操作记录 操作类型
 *  @param '' 不限
 *  @param unlock 开锁
 *  @param lock 关锁
 *  @param findBike 寻车
 *  @param openLuggage 打开电池锁
 *  @param bindBike 绑定长租车
 *  @param changeBattery 换电池
 *  @param bikeJourney 车辆骑行
 *  @param speedSwitch 车辆限速开关
 *  @param unlockBike 解锁车辆
 *  @param setVolume 音量大小调节
 *  @param speedVoice 超速语音开关
 */
export type BikeLongTermOperationType =
  | ''
  | 'unlock'
  | 'lock'
  | 'findBike'
  | 'openLuggage'
  | 'bindBike'
  | 'changeBattery'
  | 'bikeJourney'
  | 'unlockBike'
  | 'setVolume'
  | 'speedVoice'
  | 'speedSwitch'

/**
 * 短租车 操作记录 操作类型
 *  @param '' 不限
 *  @param unlock 开锁
 *  @param lock 关锁
 *  @param openLuggage 开电池仓
 *  @param queryPower 查询电量
 */
export type BikeShortTermOperationType = '' | 'unlock' | 'lock' | 'openLuggage' | 'queryPower'

/**
 * 电柜 操作记录 操作类型
 *  @param '' 不限
 *  @param newBattery 领电池
 *  @param changeBattery 换电池
 *  @param returnBattery 归还电池
 *  @param fault 故障上报
 *  @param lockBox 电柜上锁
 *  @param unlockBox 电柜开锁
 *  @param maintenanceDoor 维护仓门
 */
export type BoxOperationType =
  | ''
  | 'newBattery'
  | 'changeBattery'
  | 'returnBattery'
  | 'fault'
  | 'lockBox'
  | 'unlockBox'
  | 'maintenanceDoor'

/**
 * 用户账户状态
 * @param status  0 - 冻结
 * @param status  1 - 正常
 * @param status  2 - 实名注销
 */
export type UserAccountType = '0' | '1' | '2'

/**
 * 用户性别
 * @param gender  0 - 未知
 * @param gender  1 - 男
 * @param gender  2 - 女
 */
export enum GenderType {
  None,
  Man,
  Women
}
/**
 * 订单状态
 * @param -1 待支付
 * @param 0 已购买套餐/待领取
 * @param 1 租用中
 * @param 2 已退租，等待商家确认/可退押金
 * @param 3 退款审核中
 * @param 4 已结束
 * @param 5 已逾期
 * @param 6 已结束，商家已确认完成，待退押金
 * @param 7 已结束
 * @param 8 退款被驳回
 * @param 9 押金退款中
 * @param 10 退款失败
 * @param 12 已取消
 * @param 98 期满赠送
 * @param 99 已购买
 */
export type CommonOrderStatusCodeType =
  | '-1'
  | '0'
  | '1'
  | '2'
  | '3'
  | '4'
  | '5'
  | '7'
  | '8'
  | '9'
  | '10'
  | '12'

/**
 * 车辆套餐订单状态
 */
export type BikeTermOrderStatusCodeType = CommonOrderStatusCodeType | '6' | '98' | '99'

/**
 * 换电套餐订单状态
 */
export type BatteryTermOrderStatusCodeType = CommonOrderStatusCodeType

/**
 * 中控线材订单状态
 * @param -1 待支付
 * @param 0 待安装
 * @param 1 已安装
 * @param 12 已退单
 */
export type BikeModifieldsOrderStatusCodeType = '-1' | '0' | '1' | '12'
/**
 * 单次换电订单状态
 * @param 0 待领取
 * @param 1 已领取
 * @param 12 订单已取消
 */
export type BatterySwapOrderStatusCodeType = '0' | '1' | '12'
/**
 * 订单状态类型
 */
export type OrderStatusCodeType =
  | BikeTermOrderStatusCodeType
  | BatteryTermOrderStatusCodeType
  | BatterySwapOrderStatusCodeType
  | BikeModifieldsOrderStatusCodeType
/**
 * 套餐是否调整
 * @param 1 调整
 * @param 0 未调整
 */
export type orderChangedType = '0' | '1'

/**
 * 用户卡券状态
 * @param 0 - 待生效 开始时间未到
 * @param 1 - 待使用 已生效但未使用
 * @param 3 - 已使用 已使用优惠券
 * @param 4 - 已过期 结束时间已过
 */
export type userCouponType = '0' | '1' | '2' | '3'

/**
 * 套餐调整记录 操作类型
 * @param 0 - 增加天数/次数
 * @param 1 - 扣除天数/次数
 * @param 2 - 减少逾期天数
 */
export type OrderChangeLogOperationType = '0' | '1' | '2'

/**
 * 押金退款 退款状态
 * @param all - 全部
 * @param underreview - 审核中
 * @param refund - 待退款
 * @param refunded - 退款中
 * @param overrule - 被驳回
 */
export type DepositRefundType = 'all' | 'underreview' | 'refund' | 'refunded' | 'overrule'
/**
 * 客服退款 退款状态
 * @param all - 全部
 * @param underreview - 审核中
 * @param refund - 待退款
 * @param refunded - 退款中
 * @param overrule - 被驳回
 */
export type CustomerRefundType =
  | 'all'
  | 'underreview'
  | 'refund'
  | 'refunded'
  | 'overrule'
  | 'withdraw'
/**
 * 退款渠道
 */
export type AccountType = 'Origin' | 'Alipay' | 'BankCard' | ''

/**
 * 退款记录状态
 * @param 0 - 审核中
 * @param 1 - 退款中
 * @param 2 - 已驳回
 * @param 3 - 已退款
 * @param 4 - 撤回申请
 */
export type RefundStatus = '0' | '1' | '2' | '3' | '4'

/**
 * 退款申请类型
 */
export type RefundApplyType = 'PARTIAL_REFUND' | 'DEPOSIT_REFUND'

/** 取还车点类型 */
export type PointType = 'return' | 'take'

/**
 * @description 短租车代付调整类型
 * @type 0 - 骑行费用
 * @type 1 - 强制还车费
 * @type 2 - 维修费
 * @type 3 - 拖车费
 * @type 4 - 违规费
 */

export type ShortTermAdjustType = 0 | 1 | 2 | 3 | 4
/**
 * @description 收退调整类型
 * @type 0 - 收费
 * @type 1 -退费
 */
export type OperationType = 0 | 1

/**
 * @description 是否配置头盔
 * @param 0 - 否
 * @param 1 - 是
 */
export type isHasMask = '0' | '1'

/**
 * @description 头盔状态
 * @param 0 - 头盔已归还 (头盔锁,线未断开)
 * @param 1 - 头盔未归还(头盔锁，线已断开)
 */
export type MaskStatusType = '0' | '1'

/**
 * @description 仓内有无电池
 * @param 0 - 无电池
 * @param 1 - 有电池
 */
export type isHasBattery = '0' | '1'

/**
 * @description 电池仓状态
 * @param 0 - 电池仓锁已关
 * @param 1 - 电池仓锁已开
 */
export type LuggageStatus = '0' | '1'

/**
 * @description 电池仓状态
 * @param 0 - 校验头盔
 * @param 1 - 校验仓内有无电池
 * @param 2 - 校验电池仓状态
 * @param 3 - 校验还车位置
 * @param 4 - 校验车锁状态
 * @param 5 - 还车结果
 */
export type AssistReturnBikeType = 0 | 1 | 2 | 3 | 4 | 5

/**
 * @description 租赁权益
 * @param allowChangeBattery    租期内免费换电
 * @param payAfterUse    先用后付
 * @param canUseCoupon   支持优惠券
 * @param rentToOwn    以租代购
 */
export type RentEquityType = 'allowChangeBattery' | 'payAfterUse' | 'canUseCoupon' | 'rentToOwn'

/**
 * @description 收费类型
 * @param 0 - 行程费用
 * @param 1 - 违规费用
 * @param 2 - 其他费用
 */

export type FeeType = 0 | 1 | 2 | 3

/**
 * @description 费用申诉类型
 * @param 0 - 不限
 * @param 1 - 行程收费
 * @param 2 - 违规收费
 * @param 3 - 其他收费
 */
export type CyclingGrievancesFeeType = 0 | 1 | 2 | 3

/**
 * @description 申诉状态
 * @param PENDING - 申诉中
 * @param APPROVED - 已处理
 * @param REJECTED - 已驳回
 */
export type AppealStatus = 'PENDING' | 'APPROVED' | 'REJECTED'
/** 账户状态
 * @param 0 - 冻结
 * @param 1 - 正常
 */
export type useFlagType = '0' | '1'
/**
 * 菜单权限
 * @param 0 - 不是全部菜单
 * @param 1 - 是
 */
export type flgType = '0' | '1'

/**
 * 押金抵扣类型
 * @param 0 违章费
 * @param 1 - 维修费
 * @param 2 - 逾期费
 * @param 3 - 其他
 */
export type depositDeductionOperationType = '0' | '1' | '2' | '3' | '4'

/**
 * 工单紧急程度
 */
export type workOrderUrgencyType = '紧急' | '重要' | '普通' | '较低'

/**
 *  工单设备类型
 */

export type workOrderDeviceType = '短租车' | '换电柜' | '长租车' | '电池' | '民用车' | '改装车'

/** 工单分类 */
export type workOrderCategoryType =
  | '不限'
  | '故障'
  | '换电'
  | '调度'
  | '巡检'
  | '维修'
  | '寻找'
  | '事故'
  | '其他'

/*** 工单状态 * PENDING- 待处理 * IN_PROGRESS - 已接单 * REVIEWING - 待审核 * CANCELLED - 已取消 * COMPLETED - 已完成 */
export type workOrderStatus = 'PENDING' | 'IN_PROGRESS' | 'REVIEWING' | 'CANCELLED' | 'COMPLETED'
/**
 * 状态
 *  0未处理
 *  1待处理
 *  2处理中
 *  3已处理
 *  4已忽略
 */
export type faultStatus = 0 | 1 | 2 | 3 | 4

export type ChannelType = 'IOS' | 'Android' | 'WeChat'

/**
 * 还车点显示开关
 * 0 - 关闭(默认)
 * 1 - 开启
 */
export type ShowReturnLocationType = 0 | 1

/** 卡券类型
 * 4 - 短租满减券
 * 3 - 长租满减券
 */
export type CouponType = '4' | '3'
